#include <stdio.h>
#include <stdlib.h>
#include "linkfunc.h"



link_node *creat_link(void)
{
    link_node *H=malloc(sizeof(link_node));
    H->data=0;
    H->next=NULL;

    return H;
}

int insertnode(link_node *H)
{
    int inputnum;
    scanf("%d",&inputnum);
    link_node *p=malloc(sizeof(link_node));
    p->data=inputnum;
    p->next=NULL;
    
    p->next=H->next;
    H->next=p;
    H->data++;

    return 0;
}


int view(link_node *H)
{
    while(H->next!=NULL)
    {
        H=H->next;
        printf("%d ",H->data);
    }

    printf("\n");

    return 0;
}

int sort(link_node *H)
{
    int i=0;
    int j=0;
    int len=H->data;
    int temp;
    link_node *p=H->next;
/*
    for(i=0;i<len-1;i++)
    {   
        for(j=0;j<len-i-1;j++)
        {
            if((p->data)>(p->next->data))
            {
                temp=p->data;
                p->data=p->next->data;
                p->next->data=temp;
            }
            p=p->next;
        }
        p=H->next;
    }
*/
    for(i=len-1;i>0;i--)
    {
        for(j=0;j<i;j++)
        {
            if((p->data)>(p->next->data))
            {
                temp=p->data;
                p->data=p->next->data;
                p->next->data=temp;
            }
            p=p->next;
        }
        p=H->next;     
    }
    return 0;
        
}

int returnlink(link_node *H)
{
    link_node *p=H->next->next;
    H->next->next=NULL;
    link_node *q=p;

    while(p!=NULL)
    {
        q=p;
        p=p->next;
        
        q->next=H->next;
        H->next=q;

    }
    
    return 0;
}